FIND-Baustein

Kurz-Information

Name

FIND

→POE-Typ

→Funktion

Kategorie

Standard (non-safe), String

Konform zur →IEC-Norm

(Fehler) derzeit eingeschränkt
(IEC fordert Datentyp ANY_STRING für den Eingang IN1 und daher auch diesen Datentyp: WSTRING. Dieser Datentyp wird derzeit für den Baustein nicht unterstützt.
IEC fordert Datentyp ANY_CHARS für den Eingang IN2und daher auch diese Datentypen: WSTRING, CHAR, WCHAR. Diese werden derzeit für den Baustein nicht unterstützt.)

Grafische Schnittstelle

Verfügbar ab

Version 1.30.0 (für Neuron Power Engineer) – Anfangsvariante

Version 3.8.0 (für Bibliothek Standard (non-safe)): Baustein in diese Bibliothek verschoben

Funktionalität

Der Baustein bestimmt die erste Position, an der ein String innerhalb eines anderen Strings beginnt. Dabei wird die Groß- und Kleinschreibung beachtet.

Am Eingang IN1 geben Sie eine Zeichenkette ein (= 1. String), welche durchsucht werden soll. Am Eingang IN2 geben Sie die Zeichenkette ein (= 2. String), welche gesucht werden soll. Falls der Such-String nicht in IN2 enthalten ist, liefert der Baustein den Wert 0. Falls nach einer leeren Zeichenfolge gesucht wird, liefert der Baustein den Wert 1.

(Info) Neuron Power Engineer bestimmt die Positionen von Zeichen in einem String so: 1, 2, ..., n. Dabei entspricht 1 dem Zeichen ganz links im String und n der Länge des Strings.
Literal mit Kombinationen von 3 Zeichen, beginnend mit dem Dollar-Zeichen ($) und gefolgt von 2 Hexadezimal-Ziffern (z.B. für Sonderzeichen – wie oben erwähnt) Beispiel: Der String '$B15' (entspricht '±5') besteht somit aus 2 Zeichen. Weitere Beispiele für diese Kombinationen finden Sie unter →Zeichenfolge-Literal.

Eingänge, Ergebniswert

 

Bezeichner

→Datentyp

Beschreibung

Eingänge:

IN1

STRING

1. Eingangswert (= String, in dem gesucht wird)

 

IN2

STRING

2. Eingangswert (= String, nach dem gesucht wird)

Ergebniswert:

USINTUINTUDINTULINTSINTINTDINT oder LINT(entspricht dem →allgemeinen Datentyp ANY_INT)

 

Der Eingang EN und der Ausgang ENO sind für den →Aufruf des Bausteins verfügbar. Siehe "Ausführungssteuerung: EN, ENO" für Informationen zum Eingang EN und zum Ausgang ENO.

Informieren Sie sich unter:

Beispiel für Verwendung im ST-Editor

PROGRAM Test
    VAR
        result1, result2, result3, result4, result5, result6, result7 : INT;
        str6 : STRING[1];
    END_VAR
    result1 := FIND(IN1 := 'ASTRING_NEWSTRING', IN2 := 'STRING');     (* The variable 'result1' evaluates to '2'. *)
    result2 := FIND(IN1 := 'ASTRING_NEWSTRING', IN2 := 'String');     (* The variable 'result2' evaluates to '0'. Reason: The strings differ regarding their case sensitivity. *)
    result3 := FIND(IN1 := 'ASTRING_NEWSTRING', IN2 := 'NEW');        (* The variable 'result3' evaluates to '9'. *)
    result4 := FIND(IN1 := 'ASTRING_NEWSTRING', IN2 := 'X');          (* The variable 'result4' evaluates to '0'. *)
    result5 := FIND(IN1 := '$B15', IN2 := '5');                       (* The variable 'result5' evaluates to '2'. *)
    result6 := FIND(IN1 := 'ASTRING', IN2 := str6);                   (* The variable 'result6' evaluates to '1'. Reason: An empty string is searched for. *)
    result7 := FIND(IN1 := 'ASTRING', IN2 := '$00');                  (* The variable 'result7' evaluates to '1'. Reason: An empty string is searched for because '$00' is an empty string. *)
END_PROGRAM

Bei der Erstellung Ihrer Anwendung im ST-Editor erstellen Sie den Aufruf eines Bausteins, indem Sie den laut Syntax erforderlichen Text eintippen oder die Inhaltshilfe verwenden.